#!/bin/sh

# 需要定义的变量
APP_PREFIX=
JAR_NAME=edge-apigw
JAR_VERSION=1.0.0-SNAPSHOT
LOG_PATH=/data/logs/$JAR_NAME
START_ARGS=""

DEBUG=false
DEBUG_PORT=28765

# 自动变量，无需理会
WORKDIR=`cd $(dirname $0); pwd`
JAR_FINAL=$JAR_NAME-$JAR_VERSION.jar
JAVA=$JAVA_HOME/bin/java
JAVA_OPTS="-Xms256m -Xmx512m"

if [[ $DEBUG == true ]]; then
  JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=$DEBUG_PORT"
fi

# 启动服务
nohup $JAVA $JAVA_OPTS -jar $WORKDIR/$JAR_FINAL $START_ARGS > /dev/null 2>&1 &

# 使用systemctl服务时，不能直接tail查看日志，会造成进程阻塞
# 传入脚本参数"false"，则不开启自动查看日志功能，例如：./start.sh false
# 默认无需传入脚本参数，则自动查看服务日志
if [[ ! $1 == false ]]; then
  # 创建日志目录，解决首次执行脚本找不到日志文件的问题
  mkdir -p $LOG_PATH
  
  if [[ ! -f $LOG_PATH/$JAR_NAME.log ]];then
    touch $LOG_PATH/$JAR_NAME.log
  fi

  # tail日志
  tail -f $LOG_PATH/$JAR_NAME.log
fi
